This is a project on A/B Testing for a Fast Food Marketing Campaign. 3 Promotions were offered to different stores with varying MarketID, MarketSize, LocationID, and AgeOfStore. Sales figures were collected over 4 weeks. We first calculated the percentage increase/decrease between each weekly period. Then we defined our KPI as the average of this weekly increase/decrease. We find that Promotion 1 was the most effective in increasing sales and used an ANOVA test with alpha = 0.05 to show that there was no significant statistical evidence to suggest that the means/variance of the 3 groups were different.
Original DataSet: https://www.kaggle.com/datasets/chebotinaa/fast-food-marketing-campaign-ab-test
install.packages('tidyverse', repos = "http://cran.us.r-project.org")
## Installing package into 'C:/Users/Steve/AppData/Local/R/win-library/4.2'
## (as 'lib' is unspecified)
## package 'tidyverse' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\Steve\AppData\Local\Temp\RtmpQD4khU\downloaded_packages
library(tidyverse)
## ── Attaching packages
## ───────────────────────────────────────
## tidyverse 1.3.2 ──
## ✔ ggplot2 3.4.0 ✔ purrr 0.3.5
## ✔ tibble 3.1.8 ✔ dplyr 1.0.10
## ✔ tidyr 1.2.1 ✔ stringr 1.4.1
## ✔ readr 2.1.3 ✔ forcats 0.5.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
install.packages('ggplot2', repos = "http://cran.us.r-project.org")
## Warning: package 'ggplot2' is in use and will not be installed
library(ggplot2)
ff_df <- read.csv('WA_Marketing-Campaign.csv')
summary(ff_df)
## MarketID MarketSize LocationID AgeOfStore
## Min. : 1.000 Length:548 Min. : 1.0 Min. : 1.000
## 1st Qu.: 3.000 Class :character 1st Qu.:216.0 1st Qu.: 4.000
## Median : 6.000 Mode :character Median :504.0 Median : 7.000
## Mean : 5.715 Mean :479.7 Mean : 8.504
## 3rd Qu.: 8.000 3rd Qu.:708.0 3rd Qu.:12.000
## Max. :10.000 Max. :920.0 Max. :28.000
## Promotion week SalesInThousands
## Min. :1.000 Min. :1.00 Min. :17.34
## 1st Qu.:1.000 1st Qu.:1.75 1st Qu.:42.55
## Median :2.000 Median :2.50 Median :50.20
## Mean :2.029 Mean :2.50 Mean :53.47
## 3rd Qu.:3.000 3rd Qu.:3.25 3rd Qu.:60.48
## Max. :3.000 Max. :4.00 Max. :99.65
str(ff_df)
## 'data.frame': 548 obs. of 7 variables:
## $ MarketID : int 1 1 1 1 1 1 1 1 1 1 ...
## $ MarketSize : chr "Medium" "Medium" "Medium" "Medium" ...
## $ LocationID : int 1 1 1 1 2 2 2 2 3 3 ...
## $ AgeOfStore : int 4 4 4 4 5 5 5 5 12 12 ...
## $ Promotion : int 3 3 3 3 2 2 2 2 1 1 ...
## $ week : int 1 2 3 4 1 2 3 4 1 2 ...
## $ SalesInThousands: num 33.7 35.7 29 39.2 27.8 ...
ff_df_true = ff_df
ff_df_true$Promotions = as.factor(ff_df_true$Promotion)
ff_df_true$MarketSizes = as.factor(ff_df_true$MarketSize)
ff_df_true$MarketIDs = as.factor(ff_df_true$MarketID)
ff_df_true1 = ff_df_true %>% select(-1,-2,-5)
ff_df_true1
## LocationID AgeOfStore week SalesInThousands Promotions MarketSizes
## 1 1 4 1 33.73 3 Medium
## 2 1 4 2 35.67 3 Medium
## 3 1 4 3 29.03 3 Medium
## 4 1 4 4 39.25 3 Medium
## 5 2 5 1 27.81 2 Medium
## 6 2 5 2 34.67 2 Medium
## 7 2 5 3 27.98 2 Medium
## 8 2 5 4 27.72 2 Medium
## 9 3 12 1 44.54 1 Medium
## 10 3 12 2 37.94 1 Medium
## 11 3 12 3 45.49 1 Medium
## 12 3 12 4 34.75 1 Medium
## 13 4 1 1 39.28 2 Medium
## 14 4 1 2 39.80 2 Medium
## 15 4 1 3 24.77 2 Medium
## 16 4 1 4 30.98 2 Medium
## 17 5 10 1 30.37 2 Medium
## 18 5 10 2 24.82 2 Medium
## 19 5 10 3 37.47 2 Medium
## 20 5 10 4 23.35 2 Medium
## 21 6 10 1 32.90 3 Medium
## 22 6 10 2 22.18 3 Medium
## 23 6 10 3 42.98 3 Medium
## 24 6 10 4 26.68 3 Medium
## 25 7 15 1 42.92 1 Medium
## 26 7 15 2 42.16 1 Medium
## 27 7 15 3 51.72 1 Medium
## 28 7 15 4 36.17 1 Medium
## 29 8 10 1 30.08 2 Medium
## 30 8 10 2 28.62 2 Medium
## 31 8 10 3 25.40 2 Medium
## 32 8 10 4 27.26 2 Medium
## 33 9 6 1 37.41 1 Medium
## 34 9 6 2 38.64 1 Medium
## 35 9 6 3 40.90 1 Medium
## 36 9 6 4 41.11 1 Medium
## 37 10 5 1 34.27 2 Medium
## 38 10 5 2 29.30 2 Medium
## 39 10 5 3 23.93 2 Medium
## 40 10 5 4 35.16 2 Medium
## 41 11 5 1 33.42 3 Medium
## 42 11 5 2 37.93 3 Medium
## 43 11 5 3 33.85 3 Medium
## 44 11 5 4 40.25 3 Medium
## 45 12 12 1 35.85 1 Medium
## 46 12 12 2 36.24 1 Medium
## 47 12 12 3 41.73 1 Medium
## 48 12 12 4 37.32 1 Medium
## 49 13 12 1 50.48 1 Medium
## 50 13 12 2 36.88 1 Medium
## 51 13 12 3 35.68 1 Medium
## 52 13 12 4 46.45 1 Medium
## 53 101 22 1 67.48 1 Small
## 54 101 22 2 65.57 1 Small
## 55 101 22 3 68.42 1 Small
## 56 101 22 4 60.93 1 Small
## 57 102 8 1 61.59 3 Small
## 58 102 8 2 63.64 3 Small
## 59 102 8 3 54.68 3 Small
## 60 102 8 4 61.24 3 Small
## 61 103 22 1 62.93 3 Small
## 62 103 22 2 58.77 3 Small
## 63 103 22 3 70.60 3 Small
## 64 103 22 4 65.06 3 Small
## 65 104 19 1 59.76 3 Small
## 66 104 19 2 66.11 3 Small
## 67 104 19 3 62.16 3 Small
## 68 104 19 4 64.04 3 Small
## 69 105 8 1 59.65 3 Small
## 70 105 8 2 57.04 3 Small
## 71 105 8 3 59.73 3 Small
## 72 105 8 4 56.72 3 Small
## 73 106 5 1 58.55 3 Small
## 74 106 5 2 62.19 3 Small
## 75 106 5 3 53.14 3 Small
## 76 106 5 4 62.27 3 Small
## 77 201 4 1 86.14 3 Large
## 78 201 4 2 82.56 3 Large
## 79 201 4 3 79.36 3 Large
## 80 201 4 4 77.17 3 Large
## 81 202 8 1 88.73 1 Large
## 82 202 8 2 85.21 1 Large
## 83 202 8 3 81.55 1 Large
## 84 202 8 4 94.17 1 Large
## 85 203 12 1 89.70 3 Large
## 86 203 12 2 78.43 3 Large
## 87 203 12 3 84.05 3 Large
## 88 203 12 4 81.18 3 Large
## 89 204 1 1 87.43 2 Large
## 90 204 1 2 81.79 2 Large
## 91 204 1 3 88.12 2 Large
## 92 204 1 4 75.29 2 Large
## 93 205 19 1 83.02 3 Large
## 94 205 19 2 90.30 3 Large
## 95 205 19 3 85.18 3 Large
## 96 205 19 4 89.77 3 Large
## 97 206 11 1 82.64 3 Large
## 98 206 11 2 82.89 3 Large
## 99 206 11 3 82.13 3 Large
## 100 206 11 4 88.91 3 Large
## 101 207 1 1 87.70 3 Large
## 102 207 1 2 81.16 3 Large
## 103 207 1 3 81.58 3 Large
## 104 207 1 4 94.21 3 Large
## 105 208 1 1 96.48 3 Large
## 106 208 1 2 84.13 3 Large
## 107 208 1 3 91.98 3 Large
## 108 208 1 4 81.72 3 Large
## 109 209 1 1 93.71 1 Large
## 110 209 1 2 96.01 1 Large
## 111 209 1 3 93.03 1 Large
## 112 209 1 4 97.61 1 Large
## 113 210 19 1 85.11 1 Large
## 114 210 19 2 88.07 1 Large
## 115 210 19 3 94.43 1 Large
## 116 210 19 4 89.44 1 Large
## 117 211 13 1 88.64 2 Large
## 118 211 13 2 81.37 2 Large
## 119 211 13 3 82.14 2 Large
## 120 211 13 4 79.64 2 Large
## 121 212 3 1 84.34 3 Large
## 122 212 3 2 87.90 3 Large
## 123 212 3 3 76.12 3 Large
## 124 212 3 4 82.72 3 Large
## 125 213 4 1 73.22 2 Large
## 126 213 4 2 75.88 2 Large
## 127 213 4 3 78.01 2 Large
## 128 213 4 4 80.17 2 Large
## 129 214 5 1 91.60 1 Large
## 130 214 5 2 80.61 1 Large
## 131 214 5 3 93.86 1 Large
## 132 214 5 4 83.43 1 Large
## 133 215 7 1 82.65 2 Large
## 134 215 7 2 77.39 2 Large
## 135 215 7 3 80.83 2 Large
## 136 215 7 4 80.75 2 Large
## 137 216 4 1 94.89 3 Large
## 138 216 4 2 74.75 3 Large
## 139 216 4 3 93.63 3 Large
## 140 216 4 4 80.82 3 Large
## 141 217 5 1 91.61 3 Large
## 142 217 5 2 79.02 3 Large
## 143 217 5 3 86.11 3 Large
## 144 217 5 4 82.88 3 Large
## 145 218 2 1 99.65 1 Large
## 146 218 2 2 88.64 1 Large
## 147 218 2 3 86.96 1 Large
## 148 218 2 4 89.25 1 Large
## 149 219 7 1 66.22 2 Large
## 150 219 7 2 82.86 2 Large
## 151 219 7 3 83.40 2 Large
## 152 219 7 4 75.61 2 Large
## 153 220 3 1 87.08 1 Large
## 154 220 3 2 89.32 1 Large
## 155 220 3 3 99.12 1 Large
## 156 220 3 4 85.85 1 Large
## 157 221 23 1 79.53 2 Large
## 158 221 23 2 74.03 2 Large
## 159 221 23 3 78.53 2 Large
## 160 221 23 4 76.71 2 Large
## 161 222 6 1 93.32 1 Large
## 162 222 6 2 85.71 1 Large
## 163 222 6 3 77.36 1 Large
## 164 222 6 4 91.29 1 Large
## 165 301 1 1 49.61 2 Small
## 166 301 1 2 43.69 2 Small
## 167 301 1 3 54.49 2 Small
## 168 301 1 4 61.25 2 Small
## 169 302 7 1 51.47 3 Small
## 170 302 7 2 53.47 3 Small
## 171 302 7 3 46.83 3 Small
## 172 302 7 4 56.70 3 Small
## 173 303 9 1 55.94 1 Small
## 174 303 9 2 61.36 1 Small
## 175 303 9 3 56.19 1 Small
## 176 303 9 4 62.06 1 Small
## 177 304 3 1 54.01 1 Small
## 178 304 3 2 63.48 1 Small
## 179 304 3 3 61.96 1 Small
## 180 304 3 4 55.30 1 Small
## 181 305 2 1 47.89 2 Small
## 182 305 2 2 52.37 2 Small
## 183 305 2 3 49.11 2 Small
## 184 305 2 4 52.88 2 Small
## 185 306 13 1 53.79 1 Small
## 186 306 13 2 66.96 1 Small
## 187 306 13 3 57.10 1 Small
## 188 306 13 4 65.12 1 Small
## 189 307 7 1 46.98 2 Small
## 190 307 7 2 53.41 2 Small
## 191 307 7 3 36.17 2 Small
## 192 307 7 4 55.98 2 Small
## 193 308 28 1 51.87 2 Small
## 194 308 28 2 58.01 2 Small
## 195 308 28 3 47.93 2 Small
## 196 308 28 4 51.33 2 Small
## 197 309 8 1 62.16 1 Small
## 198 309 8 2 54.06 1 Small
## 199 309 8 3 51.72 1 Small
## 200 309 8 4 59.64 1 Small
## 201 401 5 1 52.23 3 Medium
## 202 401 5 2 51.68 3 Medium
## 203 401 5 3 46.22 3 Medium
## 204 401 5 4 46.03 3 Medium
## 205 402 25 1 40.40 2 Medium
## 206 402 25 2 50.28 2 Medium
## 207 402 25 3 52.72 2 Medium
## 208 402 25 4 38.30 2 Medium
## 209 403 19 1 51.79 2 Medium
## 210 403 19 2 42.56 2 Medium
## 211 403 19 3 44.64 2 Medium
## 212 403 19 4 45.11 2 Medium
## 213 404 8 1 42.15 2 Medium
## 214 404 8 2 42.59 2 Medium
## 215 404 8 3 49.56 2 Medium
## 216 404 8 4 39.25 2 Medium
## 217 405 4 1 48.18 2 Medium
## 218 405 4 2 48.25 2 Medium
## 219 405 4 3 46.42 2 Medium
## 220 405 4 4 43.77 2 Medium
## 221 406 3 1 45.30 2 Medium
## 222 406 3 2 48.84 2 Medium
## 223 406 3 3 45.08 2 Medium
## 224 406 3 4 44.67 2 Medium
## 225 407 6 1 45.56 3 Medium
## 226 407 6 2 55.19 3 Medium
## 227 407 6 3 37.84 3 Medium
## 228 407 6 4 50.07 3 Medium
## 229 408 9 1 47.33 2 Medium
## 230 408 9 2 45.42 2 Medium
## 231 408 9 3 44.31 2 Medium
## 232 408 9 4 40.26 2 Medium
## 233 409 14 1 43.27 2 Medium
## 234 409 14 2 48.33 2 Medium
## 235 409 14 3 44.14 2 Medium
## 236 409 14 4 51.50 2 Medium
## 237 410 11 1 49.95 1 Medium
## 238 410 11 2 55.11 1 Medium
## 239 410 11 3 55.28 1 Medium
## 240 410 11 4 54.70 1 Medium
## 241 411 23 1 50.11 3 Medium
## 242 411 23 2 55.59 3 Medium
## 243 411 23 3 54.37 3 Medium
## 244 411 23 4 51.91 3 Medium
## 245 412 6 1 59.34 1 Medium
## 246 412 6 2 62.63 1 Medium
## 247 412 6 3 49.08 1 Medium
## 248 412 6 4 58.04 1 Medium
## 249 413 1 1 46.26 2 Medium
## 250 413 1 2 47.71 2 Medium
## 251 413 1 3 54.09 2 Medium
## 252 413 1 4 46.89 2 Medium
## 253 414 1 1 57.37 3 Medium
## 254 414 1 2 55.53 3 Medium
## 255 414 1 3 51.16 3 Medium
## 256 414 1 4 57.06 3 Medium
## 257 415 12 1 50.59 3 Medium
## 258 415 12 2 48.64 3 Medium
## 259 415 12 3 50.55 3 Medium
## 260 415 12 4 49.08 3 Medium
## 261 501 6 1 24.75 3 Medium
## 262 501 6 2 41.47 3 Medium
## 263 501 6 3 35.10 3 Medium
## 264 501 6 4 34.33 3 Medium
## 265 502 19 1 31.94 2 Medium
## 266 502 19 2 29.64 2 Medium
## 267 502 19 3 33.64 2 Medium
## 268 502 19 4 36.05 2 Medium
## 269 503 2 1 36.70 2 Medium
## 270 503 2 2 41.53 2 Medium
## 271 503 2 3 27.71 2 Medium
## 272 503 2 4 37.20 2 Medium
## 273 504 4 1 42.16 1 Medium
## 274 504 4 2 36.80 1 Medium
## 275 504 4 3 46.98 1 Medium
## 276 504 4 4 47.35 1 Medium
## 277 505 1 1 32.21 2 Medium
## 278 505 1 2 38.41 2 Medium
## 279 505 1 3 37.90 2 Medium
## 280 505 1 4 44.84 2 Medium
## 281 506 12 1 37.45 2 Medium
## 282 506 12 2 35.46 2 Medium
## 283 506 12 3 31.85 2 Medium
## 284 506 12 4 19.26 2 Medium
## 285 507 5 1 38.65 2 Medium
## 286 507 5 2 17.34 2 Medium
## 287 507 5 3 33.14 2 Medium
## 288 507 5 4 23.44 2 Medium
## 289 508 5 1 37.17 3 Medium
## 290 508 5 2 30.52 3 Medium
## 291 508 5 3 32.51 3 Medium
## 292 508 5 4 29.12 3 Medium
## 293 509 8 1 40.46 1 Medium
## 294 509 8 2 41.25 1 Medium
## 295 509 8 3 32.05 1 Medium
## 296 509 8 4 47.50 1 Medium
## 297 510 7 1 32.77 2 Medium
## 298 510 7 2 30.26 2 Medium
## 299 510 7 3 27.55 2 Medium
## 300 510 7 4 27.37 2 Medium
## 301 511 24 1 47.48 3 Medium
## 302 511 24 2 39.41 3 Medium
## 303 511 24 3 43.29 3 Medium
## 304 511 24 4 42.59 3 Medium
## 305 512 4 1 35.30 1 Medium
## 306 512 4 2 35.86 1 Medium
## 307 512 4 3 49.30 1 Medium
## 308 512 4 4 30.81 1 Medium
## 309 513 7 1 44.98 1 Medium
## 310 513 7 2 41.71 1 Medium
## 311 513 7 3 41.10 1 Medium
## 312 513 7 4 40.97 1 Medium
## 313 514 6 1 41.10 1 Medium
## 314 514 6 2 41.56 1 Medium
## 315 514 6 3 36.39 1 Medium
## 316 514 6 4 39.67 1 Medium
## 317 515 8 1 34.46 3 Medium
## 318 515 8 2 40.13 3 Medium
## 319 515 8 3 32.18 3 Medium
## 320 515 8 4 43.73 3 Medium
## 321 601 7 1 49.01 3 Medium
## 322 601 7 2 46.29 3 Medium
## 323 601 7 3 37.14 3 Medium
## 324 601 7 4 42.82 3 Medium
## 325 602 4 1 47.22 3 Medium
## 326 602 4 2 35.24 3 Medium
## 327 602 4 3 47.22 3 Medium
## 328 602 4 4 43.15 3 Medium
## 329 603 4 1 40.71 2 Medium
## 330 603 4 2 38.26 2 Medium
## 331 603 4 3 41.44 2 Medium
## 332 603 4 4 25.70 2 Medium
## 333 604 11 1 40.29 3 Medium
## 334 604 11 2 48.35 3 Medium
## 335 604 11 3 43.26 3 Medium
## 336 604 11 4 44.20 3 Medium
## 337 605 8 1 46.14 3 Medium
## 338 605 8 2 41.12 3 Medium
## 339 605 8 3 45.03 3 Medium
## 340 605 8 4 38.85 3 Medium
## 341 606 8 1 41.96 3 Medium
## 342 606 8 2 42.27 3 Medium
## 343 606 8 3 38.51 3 Medium
## 344 606 8 4 43.51 3 Medium
## 345 607 3 1 49.39 2 Medium
## 346 607 3 2 40.25 2 Medium
## 347 607 3 3 42.46 2 Medium
## 348 607 3 4 31.62 2 Medium
## 349 608 18 1 53.38 1 Medium
## 350 608 18 2 55.31 1 Medium
## 351 608 18 3 56.10 1 Medium
## 352 608 18 4 43.24 1 Medium
## 353 609 9 1 48.18 1 Medium
## 354 609 9 2 43.11 1 Medium
## 355 609 9 3 43.78 1 Medium
## 356 609 9 4 56.90 1 Medium
## 357 610 4 1 53.53 1 Medium
## 358 610 4 2 47.92 1 Medium
## 359 610 4 3 56.18 1 Medium
## 360 610 4 4 46.66 1 Medium
## 361 611 11 1 40.43 3 Medium
## 362 611 11 2 51.15 3 Medium
## 363 611 11 3 42.50 3 Medium
## 364 611 11 4 52.76 3 Medium
## 365 612 1 1 47.63 3 Medium
## 366 612 1 2 52.21 3 Medium
## 367 612 1 3 40.17 3 Medium
## 368 612 1 4 48.36 3 Medium
## 369 613 18 1 42.76 1 Medium
## 370 613 18 2 50.52 1 Medium
## 371 613 18 3 56.86 1 Medium
## 372 613 18 4 47.51 1 Medium
## 373 614 8 1 38.56 2 Medium
## 374 614 8 2 37.29 2 Medium
## 375 614 8 3 35.60 2 Medium
## 376 614 8 4 33.35 2 Medium
## 377 615 1 1 48.50 2 Medium
## 378 615 1 2 36.80 2 Medium
## 379 615 1 3 48.32 2 Medium
## 380 615 1 4 41.54 2 Medium
## 381 701 1 1 53.56 3 Medium
## 382 701 1 2 49.72 3 Medium
## 383 701 1 3 48.77 3 Medium
## 384 701 1 4 46.84 3 Medium
## 385 702 13 1 51.82 1 Medium
## 386 702 13 2 45.02 1 Medium
## 387 702 13 3 49.44 1 Medium
## 388 702 13 4 51.32 1 Medium
## 389 703 4 1 52.85 1 Medium
## 390 703 4 2 40.84 1 Medium
## 391 703 4 3 64.45 1 Medium
## 392 703 4 4 44.43 1 Medium
## 393 704 27 1 56.64 1 Medium
## 394 704 27 2 46.06 1 Medium
## 395 704 27 3 55.46 1 Medium
## 396 704 27 4 51.41 1 Medium
## 397 705 22 1 49.67 3 Medium
## 398 705 22 2 49.98 3 Medium
## 399 705 22 3 49.50 3 Medium
## 400 705 22 4 47.35 3 Medium
## 401 706 17 1 50.26 3 Medium
## 402 706 17 2 52.05 3 Medium
## 403 706 17 3 51.14 3 Medium
## 404 706 17 4 46.30 3 Medium
## 405 707 5 1 56.99 1 Medium
## 406 707 5 2 45.57 1 Medium
## 407 707 5 3 45.92 1 Medium
## 408 707 5 4 50.52 1 Medium
## 409 708 15 1 32.61 2 Medium
## 410 708 15 2 57.27 2 Medium
## 411 708 15 3 37.32 2 Medium
## 412 708 15 4 41.22 2 Medium
## 413 709 1 1 39.73 2 Medium
## 414 709 1 2 50.30 2 Medium
## 415 709 1 3 40.16 2 Medium
## 416 709 1 4 41.37 2 Medium
## 417 710 24 1 54.79 3 Medium
## 418 710 24 2 52.39 3 Medium
## 419 710 24 3 42.15 3 Medium
## 420 710 24 4 49.63 3 Medium
## 421 711 1 1 54.95 1 Medium
## 422 711 1 2 55.78 1 Medium
## 423 711 1 3 46.49 1 Medium
## 424 711 1 4 56.84 1 Medium
## 425 712 9 1 48.06 3 Medium
## 426 712 9 2 51.09 3 Medium
## 427 712 9 3 44.19 3 Medium
## 428 712 9 4 49.52 3 Medium
## 429 801 3 1 65.11 1 Medium
## 430 801 3 2 54.38 1 Medium
## 431 801 3 3 57.14 1 Medium
## 432 801 3 4 49.91 1 Medium
## 433 802 9 1 48.76 2 Medium
## 434 802 9 2 44.14 2 Medium
## 435 802 9 3 58.10 2 Medium
## 436 802 9 4 44.16 2 Medium
## 437 803 10 1 44.66 3 Medium
## 438 803 10 2 53.78 3 Medium
## 439 803 10 3 43.91 3 Medium
## 440 803 10 4 52.41 3 Medium
## 441 804 1 1 50.54 1 Medium
## 442 804 1 2 58.43 1 Medium
## 443 804 1 3 59.77 1 Medium
## 444 804 1 4 60.44 1 Medium
## 445 805 6 1 50.94 3 Medium
## 446 805 6 2 49.38 3 Medium
## 447 805 6 3 63.98 3 Medium
## 448 805 6 4 45.84 3 Medium
## 449 806 5 1 51.01 3 Medium
## 450 806 5 2 56.16 3 Medium
## 451 806 5 3 45.77 3 Medium
## 452 806 5 4 46.47 3 Medium
## 453 807 1 1 46.02 2 Medium
## 454 807 1 2 51.09 2 Medium
## 455 807 1 3 51.68 2 Medium
## 456 807 1 4 55.91 2 Medium
## 457 808 20 1 55.90 3 Medium
## 458 808 20 2 59.80 3 Medium
## 459 808 20 3 60.97 3 Medium
## 460 808 20 4 64.14 3 Medium
## 461 809 9 1 39.98 3 Medium
## 462 809 9 2 54.58 3 Medium
## 463 809 9 3 52.64 3 Medium
## 464 809 9 4 45.43 3 Medium
## 465 810 13 1 49.30 1 Medium
## 466 810 13 2 61.80 1 Medium
## 467 810 13 3 58.00 1 Medium
## 468 810 13 4 55.20 1 Medium
## 469 901 7 1 53.76 2 Large
## 470 901 7 2 39.36 2 Large
## 471 901 7 3 47.20 2 Large
## 472 901 7 4 53.66 2 Large
## 473 902 1 1 61.53 1 Large
## 474 902 1 2 59.17 1 Large
## 475 902 1 3 63.73 1 Large
## 476 902 1 4 61.77 1 Large
## 477 903 7 1 51.89 3 Large
## 478 903 7 2 51.17 3 Large
## 479 903 7 3 54.33 3 Large
## 480 903 7 4 50.05 3 Large
## 481 904 10 1 51.09 2 Large
## 482 904 10 2 54.82 2 Large
## 483 904 10 3 44.16 2 Large
## 484 904 10 4 53.95 2 Large
## 485 905 2 1 54.34 3 Large
## 486 905 2 2 60.24 3 Large
## 487 905 2 3 56.39 3 Large
## 488 905 2 4 58.33 3 Large
## 489 906 13 1 51.26 2 Large
## 490 906 13 2 51.73 2 Large
## 491 906 13 3 51.35 2 Large
## 492 906 13 4 41.85 2 Large
## 493 907 10 1 45.21 2 Large
## 494 907 10 2 55.02 2 Large
## 495 907 10 3 45.35 2 Large
## 496 907 10 4 47.06 2 Large
## 497 908 3 1 43.59 2 Large
## 498 908 3 2 46.03 2 Large
## 499 908 3 3 47.22 2 Large
## 500 908 3 4 51.41 2 Large
## 501 909 1 1 58.19 1 Large
## 502 909 1 2 62.72 1 Large
## 503 909 1 3 66.66 1 Large
## 504 909 1 4 64.66 1 Large
## 505 910 1 1 66.34 1 Large
## 506 910 1 2 60.59 1 Large
## 507 910 1 3 61.95 1 Large
## 508 910 1 4 67.84 1 Large
## 509 911 1 1 55.39 2 Large
## 510 911 1 2 49.16 2 Large
## 511 911 1 3 58.26 2 Large
## 512 911 1 4 48.12 2 Large
## 513 912 6 1 49.98 2 Large
## 514 912 6 2 44.84 2 Large
## 515 912 6 3 55.12 2 Large
## 516 912 6 4 47.36 2 Large
## 517 913 24 1 62.33 1 Large
## 518 913 24 2 53.68 1 Large
## 519 913 24 3 62.37 1 Large
## 520 913 24 4 63.58 1 Large
## 521 914 9 1 44.70 2 Large
## 522 914 9 2 43.44 2 Large
## 523 914 9 3 52.36 2 Large
## 524 914 9 4 45.90 2 Large
## 525 915 3 1 53.51 1 Large
## 526 915 3 2 49.76 1 Large
## 527 915 3 3 68.31 1 Large
## 528 915 3 4 66.10 1 Large
## 529 916 7 1 43.61 2 Large
## 530 916 7 2 46.20 2 Large
## 531 916 7 3 51.52 2 Large
## 532 916 7 4 49.71 2 Large
## 533 917 14 1 53.50 3 Large
## 534 917 14 2 56.34 3 Large
## 535 917 14 3 51.83 3 Large
## 536 917 14 4 50.20 3 Large
## 537 918 6 1 49.62 1 Large
## 538 918 6 2 62.54 1 Large
## 539 918 6 3 50.11 1 Large
## 540 918 6 4 61.63 1 Large
## 541 919 2 1 59.87 1 Large
## 542 919 2 2 62.99 1 Large
## 543 919 2 3 57.20 1 Large
## 544 919 2 4 64.34 1 Large
## 545 920 14 1 50.20 2 Large
## 546 920 14 2 45.75 2 Large
## 547 920 14 3 44.29 2 Large
## 548 920 14 4 49.41 2 Large
## MarketIDs
## 1 1
## 2 1
## 3 1
## 4 1
## 5 1
## 6 1
## 7 1
## 8 1
## 9 1
## 10 1
## 11 1
## 12 1
## 13 1
## 14 1
## 15 1
## 16 1
## 17 1
## 18 1
## 19 1
## 20 1
## 21 1
## 22 1
## 23 1
## 24 1
## 25 1
## 26 1
## 27 1
## 28 1
## 29 1
## 30 1
## 31 1
## 32 1
## 33 1
## 34 1
## 35 1
## 36 1
## 37 1
## 38 1
## 39 1
## 40 1
## 41 1
## 42 1
## 43 1
## 44 1
## 45 1
## 46 1
## 47 1
## 48 1
## 49 1
## 50 1
## 51 1
## 52 1
## 53 2
## 54 2
## 55 2
## 56 2
## 57 2
## 58 2
## 59 2
## 60 2
## 61 2
## 62 2
## 63 2
## 64 2
## 65 2
## 66 2
## 67 2
## 68 2
## 69 2
## 70 2
## 71 2
## 72 2
## 73 2
## 74 2
## 75 2
## 76 2
## 77 3
## 78 3
## 79 3
## 80 3
## 81 3
## 82 3
## 83 3
## 84 3
## 85 3
## 86 3
## 87 3
## 88 3
## 89 3
## 90 3
## 91 3
## 92 3
## 93 3
## 94 3
## 95 3
## 96 3
## 97 3
## 98 3
## 99 3
## 100 3
## 101 3
## 102 3
## 103 3
## 104 3
## 105 3
## 106 3
## 107 3
## 108 3
## 109 3
## 110 3
## 111 3
## 112 3
## 113 3
## 114 3
## 115 3
## 116 3
## 117 3
## 118 3
## 119 3
## 120 3
## 121 3
## 122 3
## 123 3
## 124 3
## 125 3
## 126 3
## 127 3
## 128 3
## 129 3
## 130 3
## 131 3
## 132 3
## 133 3
## 134 3
## 135 3
## 136 3
## 137 3
## 138 3
## 139 3
## 140 3
## 141 3
## 142 3
## 143 3
## 144 3
## 145 3
## 146 3
## 147 3
## 148 3
## 149 3
## 150 3
## 151 3
## 152 3
## 153 3
## 154 3
## 155 3
## 156 3
## 157 3
## 158 3
## 159 3
## 160 3
## 161 3
## 162 3
## 163 3
## 164 3
## 165 4
## 166 4
## 167 4
## 168 4
## 169 4
## 170 4
## 171 4
## 172 4
## 173 4
## 174 4
## 175 4
## 176 4
## 177 4
## 178 4
## 179 4
## 180 4
## 181 4
## 182 4
## 183 4
## 184 4
## 185 4
## 186 4
## 187 4
## 188 4
## 189 4
## 190 4
## 191 4
## 192 4
## 193 4
## 194 4
## 195 4
## 196 4
## 197 4
## 198 4
## 199 4
## 200 4
## 201 5
## 202 5
## 203 5
## 204 5
## 205 5
## 206 5
## 207 5
## 208 5
## 209 5
## 210 5
## 211 5
## 212 5
## 213 5
## 214 5
## 215 5
## 216 5
## 217 5
## 218 5
## 219 5
## 220 5
## 221 5
## 222 5
## 223 5
## 224 5
## 225 5
## 226 5
## 227 5
## 228 5
## 229 5
## 230 5
## 231 5
## 232 5
## 233 5
## 234 5
## 235 5
## 236 5
## 237 5
## 238 5
## 239 5
## 240 5
## 241 5
## 242 5
## 243 5
## 244 5
## 245 5
## 246 5
## 247 5
## 248 5
## 249 5
## 250 5
## 251 5
## 252 5
## 253 5
## 254 5
## 255 5
## 256 5
## 257 5
## 258 5
## 259 5
## 260 5
## 261 6
## 262 6
## 263 6
## 264 6
## 265 6
## 266 6
## 267 6
## 268 6
## 269 6
## 270 6
## 271 6
## 272 6
## 273 6
## 274 6
## 275 6
## 276 6
## 277 6
## 278 6
## 279 6
## 280 6
## 281 6
## 282 6
## 283 6
## 284 6
## 285 6
## 286 6
## 287 6
## 288 6
## 289 6
## 290 6
## 291 6
## 292 6
## 293 6
## 294 6
## 295 6
## 296 6
## 297 6
## 298 6
## 299 6
## 300 6
## 301 6
## 302 6
## 303 6
## 304 6
## 305 6
## 306 6
## 307 6
## 308 6
## 309 6
## 310 6
## 311 6
## 312 6
## 313 6
## 314 6
## 315 6
## 316 6
## 317 6
## 318 6
## 319 6
## 320 6
## 321 7
## 322 7
## 323 7
## 324 7
## 325 7
## 326 7
## 327 7
## 328 7
## 329 7
## 330 7
## 331 7
## 332 7
## 333 7
## 334 7
## 335 7
## 336 7
## 337 7
## 338 7
## 339 7
## 340 7
## 341 7
## 342 7
## 343 7
## 344 7
## 345 7
## 346 7
## 347 7
## 348 7
## 349 7
## 350 7
## 351 7
## 352 7
## 353 7
## 354 7
## 355 7
## 356 7
## 357 7
## 358 7
## 359 7
## 360 7
## 361 7
## 362 7
## 363 7
## 364 7
## 365 7
## 366 7
## 367 7
## 368 7
## 369 7
## 370 7
## 371 7
## 372 7
## 373 7
## 374 7
## 375 7
## 376 7
## 377 7
## 378 7
## 379 7
## 380 7
## 381 8
## 382 8
## 383 8
## 384 8
## 385 8
## 386 8
## 387 8
## 388 8
## 389 8
## 390 8
## 391 8
## 392 8
## 393 8
## 394 8
## 395 8
## 396 8
## 397 8
## 398 8
## 399 8
## 400 8
## 401 8
## 402 8
## 403 8
## 404 8
## 405 8
## 406 8
## 407 8
## 408 8
## 409 8
## 410 8
## 411 8
## 412 8
## 413 8
## 414 8
## 415 8
## 416 8
## 417 8
## 418 8
## 419 8
## 420 8
## 421 8
## 422 8
## 423 8
## 424 8
## 425 8
## 426 8
## 427 8
## 428 8
## 429 9
## 430 9
## 431 9
## 432 9
## 433 9
## 434 9
## 435 9
## 436 9
## 437 9
## 438 9
## 439 9
## 440 9
## 441 9
## 442 9
## 443 9
## 444 9
## 445 9
## 446 9
## 447 9
## 448 9
## 449 9
## 450 9
## 451 9
## 452 9
## 453 9
## 454 9
## 455 9
## 456 9
## 457 9
## 458 9
## 459 9
## 460 9
## 461 9
## 462 9
## 463 9
## 464 9
## 465 9
## 466 9
## 467 9
## 468 9
## 469 10
## 470 10
## 471 10
## 472 10
## 473 10
## 474 10
## 475 10
## 476 10
## 477 10
## 478 10
## 479 10
## 480 10
## 481 10
## 482 10
## 483 10
## 484 10
## 485 10
## 486 10
## 487 10
## 488 10
## 489 10
## 490 10
## 491 10
## 492 10
## 493 10
## 494 10
## 495 10
## 496 10
## 497 10
## 498 10
## 499 10
## 500 10
## 501 10
## 502 10
## 503 10
## 504 10
## 505 10
## 506 10
## 507 10
## 508 10
## 509 10
## 510 10
## 511 10
## 512 10
## 513 10
## 514 10
## 515 10
## 516 10
## 517 10
## 518 10
## 519 10
## 520 10
## 521 10
## 522 10
## 523 10
## 524 10
## 525 10
## 526 10
## 527 10
## 528 10
## 529 10
## 530 10
## 531 10
## 532 10
## 533 10
## 534 10
## 535 10
## 536 10
## 537 10
## 538 10
## 539 10
## 540 10
## 541 10
## 542 10
## 543 10
## 544 10
## 545 10
## 546 10
## 547 10
## 548 10
ff_df_1 <- ff_df_true1 %>% pivot_wider(id_cols = c('MarketIDs','MarketSizes','LocationID','AgeOfStore','Promotions') , names_from = week , values_from = SalesInThousands)
ff_df_2 <- ff_df_1 %>% rename("Week_1" = "1", "Week_2" = "2", "Week_3" = "3", "Week_4" = "4")
ff_df_2
## # A tibble: 137 × 9
## MarketIDs MarketSizes LocationID AgeOfS…¹ Promo…² Week_1 Week_2 Week_3 Week_4
## <fct> <fct> <int> <int> <fct> <dbl> <dbl> <dbl> <dbl>
## 1 1 Medium 1 4 3 33.7 35.7 29.0 39.2
## 2 1 Medium 2 5 2 27.8 34.7 28.0 27.7
## 3 1 Medium 3 12 1 44.5 37.9 45.5 34.8
## 4 1 Medium 4 1 2 39.3 39.8 24.8 31.0
## 5 1 Medium 5 10 2 30.4 24.8 37.5 23.4
## 6 1 Medium 6 10 3 32.9 22.2 43.0 26.7
## 7 1 Medium 7 15 1 42.9 42.2 51.7 36.2
## 8 1 Medium 8 10 2 30.1 28.6 25.4 27.3
## 9 1 Medium 9 6 1 37.4 38.6 40.9 41.1
## 10 1 Medium 10 5 2 34.3 29.3 23.9 35.2
## # … with 127 more rows, and abbreviated variable names ¹AgeOfStore, ²Promotions
ff_df_3 <- mutate(ff_df_2,
week1_2 = ((Week_2 - Week_1)/Week_1)*100,
week2_3 = ((Week_3 - Week_2)/Week_2)*100,
week3_4 = ((Week_4 - Week_3)/Week_3)*100)
ff_df_4 <- mutate(ff_df_3, KPI = (week1_2 + week2_3 + week3_4 )/3)
ff_df_4 %>% select(Promotions,KPI)
## # A tibble: 137 × 2
## Promotions KPI
## <fct> <dbl>
## 1 3 7.45
## 2 2 1.48
## 3 1 -6.18
## 4 2 -3.79
## 5 2 -1.66
## 6 3 7.76
## 7 1 -3.05
## 8 2 -2.93
## 9 1 3.22
## 10 2 4.70
## # … with 127 more rows
ggplot(data=ff_df_4) + geom_boxplot(mapping=aes(x=Promotions, y=KPI)) + ggtitle("Box Plot of KPI vs Promotions") + theme(plot.title = element_text(hjust = 0.5))
ff_df_5 <- ff_df_4 %>% filter(KPI <= 15 & KPI>-15)
ggplot(data=ff_df_5) + geom_boxplot(mapping=aes(x=Promotions, y=KPI)) + ggtitle("Box Plot of KPI vs Promotions removing outliers") + theme(plot.title = element_text(hjust = 0.5))
ff_df_6 <- ff_df_5 %>% group_by(Promotions) %>% summarise( KPIs = mean(KPI))
ff_df_6
## # A tibble: 3 × 2
## Promotions KPIs
## <fct> <dbl>
## 1 1 1.23
## 2 2 0.478
## 3 3 0.975
promotion_aov <- aov(KPI ~ Promotions, data=ff_df_5)
summary(promotion_aov)
## Df Sum Sq Mean Sq F value Pr(>F)
## Promotions 2 13 6.504 0.309 0.735
## Residuals 131 2756 21.034